<?php
class MantenimientosPrevController extends AppController {

	var $name = 'MantenimientosPrev';
	var $uses = array('MantPrev');
	var $helpers = array('Html', 'Form' );

	function beforeFilter() {
		$this->checkSession();
		$this->MenuCreator->setModulo($this->name);
		$this->set('menu', $this->getMenuElements());		
	}
	
	function generar_reporte(){
		$this->MantPrev->recursive = 0;
		$this->set('mantenimientos', $this->paginate());
	}
	
	function index() {
		$this->MantPrev->recursive = 0;
		$this->set('mantenimientos', $this->paginate());		
	}

	function ver($id = null) {
		if(!$id) {
			$this->Session->setFlash('Mantenimiento no valido.');
			$this->redirect(array('action'=>'index'), null, true);
		}
		$this->set('Mantenimiento', $this->Mantenimiento->read(null, $id));
	}

	function agregar() {
		if(!empty($this->data)) {
			$this->cleanUpFields();
			$this->MantPrev->create();
			if($this->MantPrev->save($this->data)) {
				$this->Session->setFlash('El Mantenimiento preventivo ha sido agregado');
				$this->redirect(array('action'=>'index'), null, true);
			} else {
				$this->Session->setFlash('Error al crear el Mantenimiento preventivo. Por favor intenta de nuevo.');
			}
		}
	}

	function editar($id = null) {
		if(!$id && empty($this->data)) {
			$this->Session->setFlash('Mantenimiento Preventivo no valido');
			$this->redirect(array('action'=>'index'), null, true);
		}
		if(!empty($this->data)) {
			$this->cleanUpFields();
			if($this->MantPrev->save($this->data)) {
				$this->Session->setFlash('El Mantenimiento Preventivo ha sido actualizado');
				$this->redirect(array('action'=>'index'), null, true);
			} else {
				$this->Session->setFlash('Error al actualizar el Mantenimiento. Por favor intenta de nuevo');
			}
		}
		if(empty($this->data)) {
			$this->data = $this->MantPrev->read(null, $id);
		}
	}

	function eliminar($id = null) {
		if(!$id) {
			$this->Session->setFlash('id de Mantenimiento Preventivo invalido');
			$this->redirect(array('action'=>'index'), null, true);
		}
		if($this->MantPrev->del($id)) {
			$this->Session->setFlash('El Mantenimiento Preventivo #'.$id.' ha sido eliminado');
			$this->redirect(array('action'=>'index'), null, true);
		}
	}
}
?>